Control system for regulating motor speed

ABSTRACT

A motor control system accurately and reliably controls the speed of a motor so that the motor operates in accordance with a predetermined motor speed profile, and therefore does not exceed a predetermined safe speed, decelerates at a controlled rate, maintains a safe minimum speed, and does not turn in reverse. If the motor operates out of these limits, a malfunction is indicated and the control system halts operation of the motor. The motor speed is determined using an electronic tachometer that analyzes the current in at least two phases of the motor to provide extremely precise and reliable velocity information for the motor.

This application is a division of a currently pending application,application Ser. No. 07/843,604, filed on Feb. 28, 1992.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates generally to control systems for motors and, moreparticularly, to motor control circuits that keep the speed of a motorwithin a predetermined range.

2. Description of the Related Art

It often is important to control the speed of a motor with precision andreliability. Controlling the speed of a motor is especially importantwhen the motor is used to operate machinery that could cause injury ifthe motor malfunctions. For example, if the motor is used to propel anamusement ride vehicle that carries passengers, a very specific motorspeed profile must be followed with virtually no tolerance for error. Insuch an application, passengers can be injured if the motor speedincreases during the ride such that the vehicle exceeds the specifiedspeed. Conventional motor control systems can adequately limit motorspeed, but are not sufficiently reliable to provide the virtuallyerror-free matching of actual motor speed to the desired motor speedprofile, such as ramping the speed up or down, that also areparticularly important in the case of motors that propel ride vehicles.

Passengers can be injured if the actual motor speed does not reach thespeed required in the profile, because the vehicle could haveinsufficient speed to safely negotiate the ride course. The actual motorspeed also must follow the deceleration profile. For example, passengerscan be injured if the motor allows the vehicle to speed up when thepassengers are preparing to enter or exit the vehicle. Finally, theactual motor direction must propel the ride vehicle in the directioncommanded by the profile, so that the vehicle is not moved in reversewhen a forward motion is expected. The result of any of these impropermotor operations can be catastrophic. Thus, the actual motor operationmust match the motor speed profile. Many motor control systems cannotcontrol the actual motor operation with the extreme reliability demandedfor amusement park rides.

Various malfunctions can cause the actual motor speed to vary from whatthe commanded motor drive signals dictate, or can cause the drivesignals to be different from the signals that should be provided. Amotor control system is used to regulate the actual motor performance sothat the actual speed matches the speed profile or at least so that themotor is shut down if the actual speed does not match. Effective motorcontrol systems should include a means for obtaining reliable andaccurate motor speed information that is easily integrated with thedrive VFD. It is especially important to have accurate and reliablemotor speed information if the motor is to be incorporated into a ridevehicle.

Conventionally, the actual speed of a motor is usually determined byattaching a tachometer to the shaft of the motor. A mechanicaltachometer includes a mechanism that is rotated by the shaft and therebyindicates the motor's speed. The indicated speed is used to control theapplication of driving electrical power to the motor. The motor speeddata is relatively easy to integrate with the control system, but themechanical tachometer can become unreliable as various parts wear out.An electronic tachometer should provide greater reliability than amechanical tachometer, and lends itself to integration with electronicmotor drive systems. Such a tachometer, for example, can derive a speedsignal by measuring the frequency of the motor current.

From the discussion above, it should be apparent that there is a needfor a motor control system that can monitor and regulate motorperformance with comparable accuracy and a higher degree of reliabilitythan is achieved conventionally, and that can be much more easilyincorporated into a motor drive system for control of the motor speed.The present invention satisfies this need.

SUMMARY OF THE INVENTION

A motor control system in accordance with the present invention reliablymonitors the actual motor speed, compares it against a motor speedprofile, and produces command and speed monitor signals that indicatemotor performance. The control system includes a tachometer thatindicates the speed of the motor and a variable frequency drive (VFD)that produces drive signals for the motor. The command and speed monitorsignals are generated according to the speed called for by the speedprofile and the motor speed. The control system uses the command andspeed monitor signals to check for failure to operate in accordance withthe speed profile by checking for the occurrence of particularcombinations of signals that are not expected if the motor is properlyfollowing the speed profile. If an unexpected combination persistsbeyond an acceptable time period that depends on the particularcombination, then the control system indicates a failure and haltsoperation of the motor. In this way, the control system ensures that themotor operates in accordance with the motor speed profile. The requiredsignals can be produced by relatively simple circuitry, and a controlsystem incorporating such signals is easily integrated with, forexample, the drive system that is needed for a pulse-width modulationmotor.

The speed monitor signals represent the actual motor speed in relationto the motor speed profile and indicate when the actual motor speed iswithin acceptable error bounds. The command signals command the VFD tochange the speed of the motor or halt the motor altogether.Self-checking is designed into the control system by selecting the speedmonitor and command signals and by selecting the combinations of signalsto be checked such that the state of the signals will change at leastonce during the motor speed profile and such that at least two differentsignals must be checked to indicate proper functioning at any point inthe speed profile. In this way, false indications of malfunction areavoided and virtually all possible error scenarios are detected.

By checking various combinations of the speed monitor and commandsignals, it is possible to reliably check for failure modes, quicklydetermine the nature of a failure, and avoid false failure indications.For example, the speed monitor signals and command signals are selectedto be either high or low. Speed monitor signals can be established thatare high when the speed of the motor is above a minimum that constitutesfull speed, below a safe maximum speed, or within acceptable errorbounds for the deceleration rate, and that are low otherwise. Similarly,command signals can be established that are high when power should beapplied to the motor, when the motor should operate at full speed, orwhen the motor should be stopped, and are low otherwise.

Proper operation of the motor is indicated by the intersection of signalvalues. For example, if the minimum full speed signal is high and thesafe maximum speed signal is low, then the motor is running overspeed.If the VFD has been commanded to generate drive signals to operate themotor at full speed and the minimum full speed signal is low, then themotor has failed to reach full speed. To avoid false failureindications, each possible failure combination is assigned a time limit.If a combination of signals indicates a failure, then the condition mustexist for at least the assigned time limit before operation will behalted. The time period for each failure combination is restarted eachtime the error condition ceases.

A motor control system in accordance with the invention alsoadvantageously determines the rotational speed and direction of themotor by using an electronic tachometer that senses the current in atleast two poles of the motor, removes the high-frequency components ofthe sensed current signals, and provides a signal that indicates thefundamental frequency of the sensed currents and therefore the speed anddirection of the motor. The motor speed can therefore be monitored andcontrolled electronically without the reliability and maintenanceproblems associated with mechanical tachometers and with comparableaccuracy. Such electronic speed determination is relatively simple toconstruct and is easily integrated into the drive system of a motor.

The frequency of the sensed currents can be provided by current sensorsattached to each one of the phase leads attached to the motor. Thesensed current signals can be filtered by a low-pass filter that removessubstantially all frequency components greater than the maximum expectedoperating speed. The pulsed signal that indicates the frequency of thefiltered current signal can be provided by a zero crossing detector thatproduces a low to high or high to low transition at each zero crossingof the filtered current signal. All of these components can be easilyobtained and incorporated into a motor control system.

Other features and advantages of the present invention should beapparent from the following description of the preferred embodiments,which illustrate, by way of example, the principles of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a motor control system constructed inaccordance with the present invention.

FIG. 2 is a graph that shows a typical motor speed profile for the motorillustrated in FIG. 1, along with the three status signals for the ridecontrol computer.

FIG. 3 is a schematic diagram of an electronic tachometer in accordancewith the present invention, for use with the motor control systemillustrated in FIG. 1.

FIG. 4 is a block diagram of a motor control system constructed inaccordance with the present invention and applied to a linear motor.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

With reference to FIG. 1, a motor control system 10 constructed inaccordance with the present invention includes a variable frequencydrive signal generator 12 (VFD) that provides a sequence of drivesignals to each phase of a motor 14 and a speed monitoring interfaceunit 16 that receives speed data from a tachometer 18 and provides speedmonitor signals to a ride control computer 20 that, in turn, providesmotor command signals to the VFD 12 to produce the desired drive signalsand control the motor. The speed monitoring interface unit 16 monitorsthe motor speed received from the tachometer 18, compares it against amotor speed profile, and signals an error if there is a sufficientdiscrepancy. The ride control computer 20 checks for the occurrence ofparticular combinations of signal values that are not expected if themotor 14 is properly following the speed profile. If an unexpectedcombination value persists beyond an acceptable time period that dependson the particular combination, then the control system 10 indicates afailure and halts operation of the motor. In this way, the controlsystem ensures that the motor operates in accordance with the motorspeed profile and does not exceed a safe speed, decelerates in acontrolled, comfortable manner, and does not unexpectedly operate inreverse.

The motor 14 is used, for example, in an amusement park ride (notillustrated) and therefore safe, reliable operation is of extremeimportance. The control system 10 increases the likelihood of safeoperation by including a three-phase output contactor 22, which acts asa master on/off switch that can be opened to quickly disconnect themotor 14 from the VFD 12 and allow the ride vehicle to stop. Thecontactor 22 is closed by a combination of two signals, a command signalreceived from the ride control computer 20 over a power disconnectcommand line 24 and a power signal received from the VFD 12 over acontactor signal line 26. If either signal is absent, the contactor 22will open. When the contactor is closed, it allows drive signals fromthe VFD 12 to be provided to windings 13 of the motor, which define themotor poles and which create a moving magnetic field that causesrotation of the rotor 15 of the motor. The contactor 22 produces acontactor monitor signal that is high when the contactor is closed andlow when the contactor is open, and that is provided to the ride controlcomputer 20 over a signal line 28.

The tachometer 18 determines the speed of the motor 14 and provides thisdata to the speed monitoring interface unit 16. In the preferredembodiment, the tachometer is an electronic tachometer, which isdescribed in greater detail below, but alternatively can be aconventional tachometer, such as a mechanical tachometer attached to theshaft of the rotor 15. The speed data from the electronic tachometercomprises a pulse train that is provided to the speed monitoringinterface unit 16, which compares the speed data against the motor speedprofile and produces three speed monitor signals that are either high orlow depending on whether the speed of the motor meets certainconditions. The signals, for example, can be 24-volt signals generatedfrom contact switches.

The VFD 12 changes the speed of the motor 14 by changing the cycle timeof signals it provides to the motor. Typically, the VFD will provide tworunning speeds, full speed and jog speed. Full speed is the normalmaximum running speed of the motor and jog speed is used tointermittently operate the motor and, for example, park a ride vehicle.This allows the ride vehicle to be precisely positioned, such as duringa parking maneuver. The VFD 12 provides the drive signals necessary forcommanding full speed, jog speed, and ramping to and from these speeds.The VFD changes motor speed when it receives the command signals fromthe ride control computer 20. The command signals, for example, can be24-volt signals provided by contact switches.

The upper part of FIG. 2 shows a typical motor speed profile for themotor 14. The speed profile illustrates the desired motor speed for agiven elapsed time after an initial time T0. From an initially stoppedcondition at time T0, the motor is commanded to its full speed andtherefore the motor speed ramps up from zero at time T0 to full speed attime T3. After a time interval of operating at full speed, the motor iscommanded to stop and therefore the motor speed ramps down from fullspeed at time T4 to motor stop at time TS. The precision with which thecontrol system 10 operates is illustrated by the fact that the elapsedtime from T4 to T8 for motor deceleration is approximately one second.

Error bounds are established for the speed of the motor 14 during themotor speed profile. The error bound for the full speed of the motorrepresents a range of acceptable speed above and below the full speed.The maximum acceptable full speed is designated in the FIG. 2 graph as"Full+" and the minimum acceptable full speed is designated as "Full-."The Full+ and Full- levels should be set such that when the motor 14 iscruising at full speed, any normal fluctuations or noise in the speedsignal obtained from the tachometer 18 will stay within an acceptablerange between Full+ and Full-. The acceptable range is typically quitenarrow. For example, if the frequency of pulse-width signals provided bythe VFD 12 is 60 Hz for the motor at full speed, then the maximumacceptable Full+ frequency is 62 Hz and the minimum acceptable Full-frequency is 58 Hz.

The error bound for a motor 14 to be moving and still considered stoppedis designated "0+" and is set above absolute zero speed. The 0+ errorbound exists because, before the motor actually reaches absolute zerospeed, it reaches a speed that for all practical purposes is zero. Acollision of the ride vehicle at or below the 0+ speed would cause noharm to the passengers. For example, using the full speed drive signalfrequency of 60 Hz, the 0+ level is set to approximately 6 Hz.Preferably, the 0+ level is greater than the jog speed level(illustrated in the graph extending between time T6 and time T7) so thatno out of bound indication will be generated when the motor is rampeddown from any speed to jog speed and then to a stop.

An error bound for motor speed when the motor 14 is decelerating, orramping down to zero, provides a deceleration corridor designated inFIG. 2 as "Ramp+" and "Ramp-" speed. The extent of the decelerationcorridor will depend on the ride path and the nature of the ride, but isset to provide an acceptable deceleration of the ride vehicle.

Referring back to FIG. 1, the three status signals produced by the speedmonitoring interface unit 16 comprise a Ramping-Down-or-Stopped monitorsignal, a Full-Speed monitor signal, and a Forward/Normal-Speed monitorsignal that are sent over signal lines 30, 32, and 34, respectively. Thefollowing table shows the states of these three signals and theirrespective meanings:

    ______________________________________                                        SIGNAL 1  SIGNAL 2  SIGNAL 3                                                  RAMP DOWN FULL      FORWARD                                                   OR STOP   SPEED     NORMAL     MEANING                                        ______________________________________                                        0         0         0          RUNNING IN                                                                    REVERSE                                                                       (REVERSE                                                                      ERROR)*                                        0         0         1          RUNNING                                                                       BELOW FULL                                                                    SPEED                                          0         1         0          RUNNING TOO                                                                   FAST                                                                          (OVERSPEED                                                                    ERROR)*                                        0         1         1          RUNNING FULL                                                                  SPEED                                          1         0         0          STOPPED                                        1         0         1          RAMPING DOWN                                                                  AND BELOW                                                                     FULL SPEED                                     1         1         0          RAMPING DOWN                                                                  AND RUNNING                                                                   TOO FAST*                                      1         1         1          RAMPING DOWN                                                                  AND AT                                                                        FULL SPEED                                     ______________________________________                                         *error modes                                                             

The conditions for generating the speed monitoring signals are selectedto maximize safety so that when the status signals indicate errorconditions, described further below, they ensure that all possible motorspeed and direction malfunctions are detected. For example, the threemonitor signals are selected such that, at least once during the normalmotor speed profile, each monitor signal should change state, or changefrom low to high. If one of the signals does not change state at allduring the monitoring period, then an error is indicated by the ridecontrol computer 20.

With reference to FIG. 2, when the speed of the motor 14 is within thedeceleration corridor between Ramp+ and Ramp- speed and is ramping downto a stop, or is below the 0+ speed, then the Ramping-Down-or-Stoppedmonitor signal is on, or has a high value. When this monitor signal ishigh, it indicates that the motor is slowing down or is almost stopped.If the actual deceleration of the motor when decelerating is too shallowor is too steep, as dictated by the Ramp+ and Ramp- levels,respectively, then the Ramping-Down-or-Stopped monitor signal will below. The range of motor speed values for this signal is illustrated bythe arrows marked 36 and 38 and the corresponding signal 39 is indicatedin the lower portion of FIG. 2.

The Full-Speed monitor signal is on, or is set to a high value, when theactual motor speed is greater than the Full- level. The range of motorspeed values for this signal is represented in the upper part of FIG. 2by the vertical arrow 40 and the corresponding signal 41 is indicated inthe lower portion of FIG. 2. When this signal is high, it indicates thatthe motor 14 is running at or above its full speed.

The Forward/Normal-Speed monitor signal is set high when the motor speedis greater than the 0+ value and less than the Full+ speed value. Therange of motor speed values for this signal is represented in the upperportion of FIG. 2 by the arrow 42 and the corresponding signal 43 isindicated in the lower portion of FIG. 2. When this signal is high, itindicates that the motor 14 is running in a forward direction and is notrunning above its full speed.

The speed monitoring interface unit 16 includes programming that isstored in non-volatile EPROM integrated circuits. The software in thespeed monitoring interface unit generates these signals according to aprecise methodology based on the information obtained from thetachometer 18, according to the signal that will be produced. Forexample, the Ramping-Down-or-Stopped monitor signal is determined byexamining the velocity indicated from the tachometer as well as the rateof change of that velocity. In particular, if the velocity of the motor14 is greater than or equal to an absolute stopped condition, and isless than or equal to the 0+ level, then the Ramping-Down-or-Stoppedmonitor signal is set high. If the motor velocity is negative, as is thecase when the motor is running backwards, the Ramping-Down-or-Stoppedmonitor signal is set low. If the motor velocity is decreasing from anypositive speed and is decreasing within the rates specified by the Ramp+and Ramp- limits, then the Ramping-Down-or-Stopped monitor signal is sethigh. The speed monitoring interface unit 16 will analyze the speed datain the sequence listed above to determine whether theRamping-Down-or-Stopped monitor signal should be set high or low.Therefore, if the motor velocity is decreasing but is negative, then theRamping-Down-or-Stopped monitor signal will be properly set low.

Care is taken to provide a Ramping-Down-or-Stopped monitor signal whoseoutput is steady. Thus, the speed monitoring interface unit 16 ensuresthat, if the motor 14 is at full speed, then the Ramping-Down-or-Stoppedsignal will remain low, even if there is noise on the speed signal fromthe tachometer 18. Moreover, when the motor begins ramping down to astop, the Ramping-Down-or-Stopped monitor signal remains high, even withnoise on the speed signal, until the motor speed reaches absolute zero.If the 0+ level is above the jog speed level, then this monitor signalremains high while the motor runs at jog speed. This is illustrated inthe lower portion of FIG. 2, which shows that theRamping-Down-or-Stopped monitor signal is set low when the motor speedis greater than 0+ at time T1 and is set high when ramping downbeginning at time T4 through time T8.

The speed monitoring interface unit 16 sets the Full-Speed monitoringsignal to a high value by examining the velocity of the motor 14 asprovided by the tachometer 18. If the motor velocity is greater than orequal to the Full- level, then the Full-Speed monitoring signal is sethigh, and the signal is otherwise set low. Also, if the motor is runningin reverse, the Full-Speed monitoring signal is set low.

The speed monitoring interface unit 16 produces the Forward/Normal-Speedmonitor signal by examining the velocity of the motor 14. If the motorvelocity is greater than or equal to the 0+ level and less than or equalto the Full+ level, then the Forward/Normal-Speed monitor signal is sethigh and otherwise is set low. Also, if the motor speed indicates themotor is running in reverse, then the Forward/Normal-Speed monitorsignal is set low.

The ride control computer 20 operates according to a clock cycle andtherefore receives updated signals at regular clock intervals. The ridecontrol computer produces four command signals in response to the threestatus signals it receives from the speed monitoring interface unit 16and in response to the Contactor monitor signal it receives from thecontactor 22. Three of the command signals produced by the ride controlcomputer are provided to the VFD 12 over signal lines 44, 46, and 48,and comprise a Motor Run command signal, a Motor Speed command signal,and an Emergency Stop command signal, respectively.

The Motor Run command signal is set high by the ride control computer 20whenever the ride control computer determines that the VFD 12 shouldoperate the motor 14. This is determined by comparing the state of theride and operator inputs against the speed profile. The Motor Speedcommand signal selects the speed at which the motor will run, full speedor jog speed. The Motor Speed command signal is set high when the ridecontrol computer wants the motor to run at full speed and is set lowwhen it wants the motor to run at jog speed. The Emergency Stop commandsignal is set high at all times when the ride control computerdetermines that the motor 14 should be operated. The signal is low onlywhen the ride control computer 20 wants the VFD 12 to perform anemergency deceleration to a complete stop. Finally, the Power Disconnectcommand signal is a fail-safe signal that closes the contactor 22 andenables the motor 14 to be driven by the VFD 12. If the signal is setlow, the contactor is open and the motor 14 cannot run.

The ride control computer 20 selects combinations of command signals andmonitor signals, checks their status against expected values, and haltsoperation if disagreement persists beyond a set time period bygenerating the Power Disconnect command signal. The ride controlcomputer detects failure modes by using a programmable logic controllerthat implements in software, what are known to those skilled in the artas disagreement timers. In operation, at each point in the motor speedprofile graph in the upper portion of FIG. 2 and for variouspredetermined combinations of the command signals and monitor signals,there is a correct state. Whenever a command signal/monitor signalcombination is not in the correct state, they are said to disagree andthe ride control computer 20 software will keep track of the time duringwhich there is disagreement. If the time during which there isdisagreement exceeds safe limits, i.e., if a particular disagreementtimer is allowed to run for a sufficient period so that it reaches apredetermined elapsed time, different for each timer, then the ridecontrol computer 20 indicates a failure and initiates a failureresponse, usually a shut-down of the motor 14. The ride control computerresets the elapsed time for each disagreement timer to zero whenever aparticular command signal/monitor signal combination is in the correctstate, or is in agreement.

In the preferred embodiment, the ride control computer 20 softwareimplements nine disagreement timers. The first disagreement timer isreferred to as the Failed-to-Run timer and is set to indicate a failurewhen the Motor Run command signal and Contactor monitor signal are indisagreement for the time it ordinarily takes the contactor 22 to close.The two signals are in disagreement, for example, when the Motor Runcommand signal is high and the Contactor monitor signal is low. Thesecond disagreement timer is a Failed-to-Stop timer, and is set toindicate a failure when the Motor Run command signal is low and theContactor monitor signal is high, and the signals are in this conditionfor the time it ordinarily takes the motor 14 to stop from full speed,plus the time it ordinarily takes the contactor 22 to open. The nextdisagreement timer is the Failed-to-Run-Forward disagreement timer andindicates a failure when the Motor Run command and Motor Speed commandsignals are high and the Forward/Normal monitor signal is low, and arein this condition for the time it ordinarily takes the motor to go froma stopped condition to the 0+ level.

The ride control computer 20 software implements aFailed-to-Run-Full-Speed disagreement timer that indicates a failurewhen the Motor Run command signal and Motor Speed command signal arehigh, the Full-Speed monitor signal is low, and the signals are in thiscondition for the time it ordinarily takes the motor 14 to ramp up tofull speed. A Running-in-Reverse disagreement timer indicates a failurewhen the Ramping-Down-or-Stopped monitor signal, Full-Speed monitorsignal, and Forward/Normal-Speed monitor signal are all low and remainin that condition for the maximum input update time for the ride controlcomputer 20. A Running-Overspeed disagreement timer indicates a failurewhen the Full Speed monitor signal is high and the Forward/Normal-Speedmonitor signal is low for the maximum input update time of the ridecontrol computer. A Failed-to-Decelerate disagreement timer indicates afailure when the Motor Run command signal is high, the Motor Speedcommand signal is low, the Ramping-Down-or-Stopped monitor signal islow, and the signals remain in this condition for the maximum timeordinarily required for the tachometer 18 to indicate a ramping downcondition. A Failed-to-Stop disagreement timer indicates a failure whenthe Motor Run command signal is low, the Forward/Normal-Speed monitorsignal is high, and the signals are in this condition for the time itordinarily takes the motor 14 to ramp down from full speed to the 0+level. Finally, the ride control computer 20 software implements aFailed-to-Accelerate disagreement timer that indicates a failure whenthe Motor Run command signal, Full Speed command signal, and theRamping-Down-or Stopped monitor signal are high, and the signals are inthis condition for the time it ordinarily takes the motor 14 to ramp upto full speed.

The motor control system 10 described above advantageously provides safeand reliable control of motor speed with the inclusion of an electronictachometer. In particular, the preferred embodiment includes anelectronic tachometer 18 that does not require any moving parts and thatreliably provides accurate speed information and is easily incorporatedwith the other elements of the motor control system discussed above. Theelectronic tachometer achieves these benefits by analyzing the currentwaveform in the windings of the motor 14.

Referring to FIGS. 1 and 3, in the preferred embodiment, the tachometer18 is an electronic unit that detects the current in the stator wires60, 62, and 64 of the motor 14 using current sensors 66, 68, and 70,respectively, analyzes the sensed current waveforms, and produces themotor velocity information. At least two motor phases must be detectedto obtain the motor direction information that is used by the ridecontrol computer 20. The components in connection with a single phase ofthe motor will be described, but it is to be understood that similarstructure applies to the remaining phases.

The first current sensor 66 provides its sensed current to a tachometersignal processing block 72. No moving parts are required to convert thesensed current signals to speed data, and therefore the speed anddirection of the motor can be determined reliably, inexpensively, andaccurately.

The drive signals produced by the VFD 12 are characterized by a greatdeal of noise, including high frequency transients. Each of the currentsensors 66, 68, and 70, which can be Hall-effect detectors, is coupledto a stator wire 60, 62, and 64, respectively, that carries current toone pole of the motor 14. The current signal is provided to the signalprocessing block 72, which produces a pulsed signal whose frequencycorresponds to the frequency of the changing current in the stator. Thepulsed signal is provided via an output line 74 to an open collectortransistor output 76 and to the speed monitoring interface unit 16.

The speed monitoring interface unit 16 determines if the frequency ofthe speed signal, which corresponds to the speed of the motor 14, iswithin a predetermined range. For example, if the motor is used to drivean amusement park ride, the interface unit can determine if the speed ofthe ride is below Full+ and therefore is safe for the passengers. Themonitor signals produced by the speed monitoring interface unit areprovided to the ride control computer 20 as described above. The ridecontrol computer then produces the command signals.

FIG. 3 illustrates one embodiment of the signal processing block 72, andshows the processing of the current signal from one of the Hall-effectdetectors 66. In FIG. 3, the current signal from the detector 66 isprovided to a resistor 80 connected to ground and also to the input of apassive low pass filter 82. The passive low pass filter is comprised ofa resistor 84 and a capacitor 86 that are connected in series to ground.The positive input terminal of a non-inverting amplifier 88 is coupledbetween the resistor 84 and capacitor 86 of the passive low pass filter82, with feedback to the negative input terminal of the non-invertingamplifier. The output of the non-inverting amplifier 88 is provided to alow-pass filter 90 comprising an amplifier 92 with a voltage dividernetwork comprising a first resistor 94 and second resistor 96 connectedto the positive input terminal of the amplifier 92, a capacitor 98connected from between the first 94 and second 96 resistors to thenegative input terminal of the amplifier 92, and a capacitor 100connected from the positive input terminal to ground. Feedback isprovided between the output and the inverting input of the amplifier 92.The non-inverting amplifier 88 and the low-pass filter 90 togetherprovide a filtered current signal corresponding to one pole of themotor, with substantially all of the high-frequency transients removed.The non-inverting amplifier and low-pass filter can be used to remove,for example, frequency components greater than approximately 75 Hz.

After the current signal from a stator pole has been amplified and thehigh-frequency transients have been removed, the resulting signal isprovided to a zero-crossing detector 102, which provides a pulsed signalwith a transition at each zero crossing of the input signal. The zerocrossing detector can be provided in the form of a comparator 104 with afeedback resistor 106 and a coupling resistor 108. The output of thezero crossing detector is provided to a transistor 110 via the outputline 74. The zero crossing detector is coupled to the output line andtransistor via a resistor 112. The transistor is in an open collectoroutput configuration and provides an output signal to the speedmonitoring interface 16 via the transistor output line 76. It is to beunderstood that the component values illustrated in FIG. 3 are exemplaryonly.

Although a motor control system can perform according to the schemedescribed above in connection with FIGS. 1 and 2 using a mechanicaltachometer that provides a digital signal, the electronic tachometerdescribed above provides superior reliability, and is not difficult forthose skilled in the art to incorporate with control structures thatmust be provided for driving pulse-width modulation control motors.

The motor control system described above can be adapted for use with alinear motor. FIG. 4 is a block diagram of a second embodiment andillustrates the motor control system of the invention adapted to alinear motor. Structures in FIG. 4 that are analogous to structuresillustrated in FIG. 1 are identified by like reference numerals precededby the numeral 2. Like reference numerals refer to like structures. FIG.4 shows a linear motor 214 having a plurality of poles 213 arranged in alinear array adjacent to a movable reaction plate 215. A variablefrequency drive (VFD) 212 supplies three-phase drive signals to thepoles via wires 260, 262, and 264. A tachometer 18 detects the currentin the motor wires 260, 262, and 264 by using current sensors 266, 268,and 270, respectively, and analyzes the sensed current waveforms toproduce the motor velocity information. As with the embodimentillustrated in FIG. 1, the tachometer provides its speed information tothe speed monitoring interface unit 16, which is coupled to the ridecontrol computer 20. In all other respects, the linear motor 214 can becontrolled to operate in the same fashion as described above inconnection with the motor 14 illustrated in FIG. 1.

The present invention has been described above in terms of presentlypreferred embodiments so that an understanding of the present inventioncan be conveyed. There are, however, many configurations for motorcontrol systems and tachometers not specifically described herein, butwith which the present invention is applicable. The present inventionshould therefore not be seen as limited to the particular embodimentsdescribed herein, but rather, it should be understood that the presentinvention has applicability with respect to motor control systems andtachometers in a variety of applications. All modifications, variations,or equivalent arrangements that are within the scope of the attachedclaims should therefore be considered to be within the scope of theinvention.

We claim:
 1. A control system for regulating the speed of a motor havinga rotatable rotor and windings that define poles of the motor, thecontrol system comprising:a variable frequency drive that produces adrive signal that is provided to the windings of the motor to causerotation of the rotor; speed means for providing a speed signal thatindicates the actual speed of the rotor; monitor means for receiving thespeed signal and generating monitor signals that indicate motorperformance relative to a speed profile of desired :motor speed duringoperation of the motor; and control means for receiving the monitorsignals and comparing the monitor signals with predetermined expectedvalues, and for indicating a failure condition if an unexpected value isobtained and if the unexpected value persists for greater than apredetermined time interval.
 2. A control system as defined in claim 1,wherein the monitor means generates monitor signals that indicate whenthe speed of the motor exceeds a minimum full speed, when the actualspeed of the motor is below a maximum slow speed, and when the motor isproperly decelerating.
 3. A control system as defined in claim 1,wherein the control means generates command signals in response to themotor speed profile and the monitor signals, and wherein the commandsignals are provided to the variable frequency drive and determine thedrive signal generated by the variable frequency drive.
 4. A controlsystem as defined in claim 3, wherein the control means restarts a timercount for an unexpected signal combination whenever the signalcombination assumes an unexpected value.
 5. A control system as definedin claim 4, wherein the monitor means generates monitor signals thatindicate when the motor is exceeding a minimum full speed, when themotor is below a maximum slow speed, and when the motor is properlydecelerating.
 6. A control system as defined in claim 1, furtherincluding a contactor switch that connects and disconnects the motorfrom the drive signals produced by the variable frequency drive.
 7. Acontrol system as defined in claim 6, wherein the control meansgenerates command signals in response to the motor speed profile and themonitor signals, and wherein the variable frequency drive receives thecommand signals and in response generates the drive signals, and thecontactor switch receives the command signals and in response opens andcloses.
 8. A control system as defined in claim 7, wherein the monitormeans generates monitor signals that indicate when the speed of themotor exceeds a minimum full speed, when the speed of the motor is belowa maximum slow speed, and when the speed of the motor is within adecreasing ramp speed interval.
 9. A control system as defined in claim8, wherein the monitor means generates monitor signals comprising:aRamping-Down-or-Stopped monitor signal that has a high value when themotor speed is within a decreasing ramp speed interval or when the motorspeed is less than a maximum low speed, and has a low value otherwise; aFull-Speed monitor signal that has a high value when the motor speed isgreater than a minimum Full-Speed and has a low value otherwise; and aForward/Normal-Speed monitor signal that has a high value when the motorspeed is greater than the maximum low speed value and is less than amaximum full speed value.
 10. A control system as defined in claim 9,wherein the control means generates command signals that comprise:aMotor Run command signal that commands the variable frequency drive togenerate motor drive signals; a Full-Speed command signal that is highwhen the control means determines that the motor should be driven at itsfull speed and has a low value when the control means determines thatthe motor should be driven at an intermittent speed; an Emergency Stopcommand signal that has a low value when the control means determinesthat the motor should be halted immediately, and has a high value whenthe control means determines that the motor should be provided withdrive signals; and a Power-Disconnect command signal that is high whenthe control means determines that the motor should be provided withdrive signals.
 11. A control system as defined in claim 10, wherein thecontrol means indicates a plurality of failure modes that comprise:aMotor-Failed-to-Run failure mode that is indicated if the Motor Runcommand signal has a low value and Contactor monitor signal has a highvalue and if this combination persists for greater than a predeterminedtime interval; a Motor-Failed-to-Stop failure mode that is indicated ifthe Motor Run command signal has a high value and the contactor monitorsignal has a low value, and if this combination persists for greaterthan a predetermined time interval; a Motor-Failed-to-Run failure modethat is indicated if the Motor Run command signal has a low value, theFull-Speed command signal has a low value, and the Forward/Normal-Speedmonitor signal has a high value, and if this combination persists forgreater than a predetermined time interval; aMotor-Failed-to-Run-Full-Speed failure mode that is indicated if theMotor Run command signal has a low value, the Full-Speed command signalhas a low value, and the Full-Speed monitor signal has a high value, andif this combination persists for greater than the time ordinarilynecessary for the motor to reach full speed from a stopped condition; aMotor-Running-in-Reverse failure mode that is indicated if theRamping-Down-or-Stopped monitor signal has a high value, the Full-Speedmonitor signal has a high value, and the Forward/Normal-Speed monitorsignal has a high value, and if this combination persists for greaterthan a predetermined input update time for the control means; aMotor-Running-Overspeed failure mode that is indicated if the Full-Speedmonitor signal has a low value and the Forward/Normal-Speed monitorsignal has a high value, and if this condition persists for greater thanan input update time interval for the control means; aMotor-Failed-to-Decelerate failure mode that is indicated if the MotorRun command signal has a low value, the Full-Speed command signal has ahigh value, and the Ramping-Down-or-Stopped monitor signal has a highvalue, and if this combination of values persists for a time intervalgreater than is necessary for the speed means to indicate a reduction inmotor speed from its full speed to its low speed; a Motor-Failed-to-Stopfailure mode that is indicated if the Motor Run command signal is highand the Forward/Normal-Speed monitor signal is low, and if thiscombination of values persists for greater than a predetermined timeinterval in which the motor ordinarily can decrease from its full speedto its low speed; and a Motor-Failed-to-Accelerate failure mode that isindicated if the Motor Run command signal is low, the Full-Speed commandsignal is low, and the Ramping-Down-or-Stopped monitor signal is low,and if this combination of values persists for a time interval greaterthan the time it ordinarily takes for the motor to ramp up to fullspeed.
 12. A control system as defined in claim 1, wherein the speedmeans comprises an electronic tachometer including:signal means forproducing a current signal that corresponds to the current in at leastone pole of the motor; filter means for removing frequency components ofthe current signal greater than a predetermined maximum value of themotor speed profile to provide a filtered signal; and pulse means forproviding a pulse signal that indicates the frequency of the filteredsignal.
 13. A control system as defined in claim 12, wherein the filtermeans comprises a low-pass filter that filters out frequency componentsgreater than approximately 75 Hz.
 14. A control system as defined inclaim 13, wherein the low-pass filter includes resistive and capacitiveelements coupled to an amplifier element.
 15. A control system asdefined in claim 12, wherein the pulse means comprises a zero-crossingdetector that produces a transition at each zero-crossing of thefiltered signal.
 16. A control system as defined in claim 15, whereinthe zero-crossing detector comprises a resistive element coupled to anoperational amplifier.
 17. A control system as defined in claim 12,wherein the signal means comprises a current sensor that is coupled toone pole of the motor.
 18. A control system for regulating the speed ofa motor, comprising:an electronic tachometer coupled to the motor, saidelectronic tachometer producing a tachometer output that represents thespeed of the motor; a monitor that receives said tachometer output andstores in memory a motor speed profile that represents desired motorspeed during operation of the motor, said monitor comparing saidtachometer output with said motor speed profile, and producing an errorsignal if a difference between said tachometer output and said motorspeed profile exceeds predetermined expected values; and, a timercoupled to receive said error signal and that indicates a failurecondition if an unexpected value is obtained and persists for greaterthan a predetermined time interval.
 19. A control system according toclaim 18, wherein:the motor has a rotor that rotates relative towindings that define poles of the motor; said electronic tachometerincludesa detector coupled to one of the windings so as to produce avarying electronic signal representative of the motor's phase, and, apulse circuit that is coupled to said detector to receive said varyingelectronic signal and that produces said tachometer output as a pulsedoutput signal having a first state when said varying electronic signalmatches a predefined one of a voltage and current level and a differentstate when said varying electronic signal does not match said predefinedone; said monitor determines the speed of the motor in dependence uponthe frequency with which said tachometer output has said first state.20. A control system for regulating the speed of a motor having arotatable rotor and windings that define poles of the motor, saidcontrol system comprising:a variable frequency drive that produces adrive signal that is provided to the windings of the motor to causerotation of the motor; a computer that controls operation of saidvariable frequency drive to run, accelerate, decelerate the motor withina predetermined motor speed profile; an electronic tachometer thatelectronically taps at least two windings of the motor and that producesat least one pulsed output signal that represents change of polarity ofcurrent of a phase of the motor and at least one output signal thatindicates direction of rotation of the rotor; and control logic, coupledto receive said output signals from said electronic tachometer,thatstores in memory a motor speed profile that represents desired motorspeed during operation of the motor, including error bounds for each ofdesired acceleration and deceleration, compares motor speed to saidmotor speed profile that represents desired motor speed during operationof the motor, produces an error signal if a difference between saidtachometer output and said motor speed profile exceeds said errorbounds, and, indicates a failure condition an unexpected value isobtained and persists greater than a predetermined time interval.